#ifndef ADVANCEDWINDOW_H
#define ADVANCEDWINDOW_H

#include "ElaWidget.h"
#include <QProgressBar>
#include <QSlider>
#include <QCheckBox>
#include <QLabel>
/**
 * @brief 高级窗口类，继承自ElaWidget
 *
 * 该类提供了一个具有高级功能的窗口，包括置顶、固定大小、
 * 应用栏高度调节和进度条显示等功能。
 */
class AdvancedWindow : public ElaWidget
{
    Q_OBJECT

  public:
    explicit AdvancedWindow(QWidget* parent = nullptr);

  private Q_SLOTS:

    void onStayTopToggled(bool checked);    // 置顶功能切换槽函数
    void onFixedSizeToggled(bool checked);  // 固定大小功能切换槽函数
    void onAppBarHeightChanged(int value);  // 应用栏高度改变槽函数
    void updateProgressBar(int value);      // 更新进度条

  private:
    void setupUI();

    QCheckBox* m_stayTopCheck;    ///< 置顶功能复选框
    QCheckBox* m_fixedSizeCheck;  ///< 固定大小功能复选框
    QSlider* m_heightSlider;      ///< 应用栏高度调节滑块
    QProgressBar* m_progressBar;  ///< 进度条显示控件
    QLabel* m_heightLabel;        ///< 应用栏高度显示标签
};

#endif  // ADVANCEDWINDOW_H